package com.test.jdk9.newStream;

import javax.swing.*;
import java.util.List;
import java.util.stream.IntStream;
import java.util.stream.Stream;

/**
 * @Description: TODO
 * @Author 赵侠客
 * @Date 2023/6/3
 **/
public class Newiterate {
    public static void main(String[] args) {

        for(int i=1;i<10;i++){
            System.out.print(i);
        }
        System.out.println("\n------------FOR-----------------\n");


        List<Integer> list=List.of(1,2,3,4,5,6,7,8,9);
        list.forEach(System.out::print);
        System.out.println("\n-------------IntStream----------------\n");


        IntStream.rangeClosed(1,9).forEach(System.out::print);
        System.out.println("\n---------------JDK8--------------\n");


        // JDK8 使用iterate方法，需配合limit截止。
        Stream.iterate(1, (x) -> x + 1).limit(9).forEach(System.out::print);
        System.out.println("\n----------------JDK8 interate+limit -----------------------");


        // JDK9 使用iterate的重载方法可以直接使用Predicate来截止。
        Stream.iterate(1, (x) -> x < 10, (x) -> x + 1).forEach(System.out::print);
        System.out.println("\n----------------JDK9+ interate-----------------------");
    }
}
